<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        // 函数的分类
        //   系统函数
        //   自定义函数
        //       具名函数
        //       赋值式函数
        //       匿名函数的自调用
        //   事件驱动型函数  document.onclick = function(){}   // 函数是在事件触发的时候，才会被系统执行


        // 函数的相关概念
        //    参数
        //       形参  /  arguments
        //       实参
        //    返回值
        //       函数默认都会返回undefined  , 如果写了return 就覆盖undefined
        //       return 提前结束函数


        //  作用域 
        //     全局变量
        //     局部变量
        //     函数的嵌套 --- 子函数可以访问到父函数的局部变量


        //  js的预编译
        //     在代码真正执行之前，js会优先提升所有的var(只提升变量声明，不提升变量赋值),再提升所有的具名函数


        //  递归函数
        //      函数自己调用自己
        //      递归一定要有出口 --- 否则就会死递归


        

    </script>
    
</body>
</html>